/*
 * Copyright © 2004-2014 chenYuan. All rights reserved.
 * @Website:wwww.jspx.net
 * @Mail:39793751@qq.com
 * @author: chenYuan , 陈原
 * @License: Jspx.net Framework Code is open source (LGPL)，Jspx.net Framework 使用LGPL 开源授权协议发布。
 * @jvm:jdk1.6+  x86/amd64
 *
 */
package com.jspx.sober.annotation;

/**
 * Created by IntelliJ IDEA.
 * User:chenYuan (mail:39793751@qq.com)
 * Date: 2007-2-5
 * Time: 21:24:46
 *
 */

import java.lang.annotation.Target;
import java.lang.annotation.Retention;
import java.lang.annotation.ElementType;
import java.lang.annotation.RetentionPolicy;

@Target({ElementType.METHOD, ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
public @interface Id
{
    //是否sober生成ID
    boolean auto() default true;
    /*
    seq:系统默认生成 yyyyMMddhhss + 序列,类型可以是long 和 String
    seq:的时候使用下边的配置创建系列

    uid:jdk1.5 默认生成 b2a53eef-3a29-44ff-bca5-72abc9568785,类型可以是String
    uid:为long类型使用 UUID getMostSignificantBits 生成
    serial:数据库 自动增加

    果 auto=false 就会 type＝serial 更具数据库得到
    auto=true 如果里边已经有值，将不创建id,否则更具type生成
    */

    String type() default "uid";

    int length() default 17;  //max 19

    long max() default Integer.MAX_VALUE;
    
    int min() default 0;

    int next() default 1;

    boolean dateStart() default false;
}